package com.fulihui.information.dal.dataobj;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class InfoContentExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public InfoContentExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(String value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(String value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(String value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(String value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(String value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(String value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLike(String value) {
            addCriterion("id like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotLike(String value) {
            addCriterion("id not like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<String> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<String> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(String value1, String value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(String value1, String value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andCategoryCodeIsNull() {
            addCriterion("category_code is null");
            return (Criteria) this;
        }

        public Criteria andCategoryCodeIsNotNull() {
            addCriterion("category_code is not null");
            return (Criteria) this;
        }

        public Criteria andCategoryCodeEqualTo(String value) {
            addCriterion("category_code =", value, "categoryCode");
            return (Criteria) this;
        }

        public Criteria andCategoryCodeNotEqualTo(String value) {
            addCriterion("category_code <>", value, "categoryCode");
            return (Criteria) this;
        }

        public Criteria andCategoryCodeGreaterThan(String value) {
            addCriterion("category_code >", value, "categoryCode");
            return (Criteria) this;
        }

        public Criteria andCategoryCodeGreaterThanOrEqualTo(String value) {
            addCriterion("category_code >=", value, "categoryCode");
            return (Criteria) this;
        }

        public Criteria andCategoryCodeLessThan(String value) {
            addCriterion("category_code <", value, "categoryCode");
            return (Criteria) this;
        }

        public Criteria andCategoryCodeLessThanOrEqualTo(String value) {
            addCriterion("category_code <=", value, "categoryCode");
            return (Criteria) this;
        }

        public Criteria andCategoryCodeLike(String value) {
            addCriterion("category_code like", value, "categoryCode");
            return (Criteria) this;
        }

        public Criteria andCategoryCodeNotLike(String value) {
            addCriterion("category_code not like", value, "categoryCode");
            return (Criteria) this;
        }

        public Criteria andCategoryCodeIn(List<String> values) {
            addCriterion("category_code in", values, "categoryCode");
            return (Criteria) this;
        }

        public Criteria andCategoryCodeNotIn(List<String> values) {
            addCriterion("category_code not in", values, "categoryCode");
            return (Criteria) this;
        }

        public Criteria andCategoryCodeBetween(String value1, String value2) {
            addCriterion("category_code between", value1, value2, "categoryCode");
            return (Criteria) this;
        }

        public Criteria andCategoryCodeNotBetween(String value1, String value2) {
            addCriterion("category_code not between", value1, value2, "categoryCode");
            return (Criteria) this;
        }

        public Criteria andTopStatusIsNull() {
            addCriterion("top_status is null");
            return (Criteria) this;
        }

        public Criteria andTopStatusIsNotNull() {
            addCriterion("top_status is not null");
            return (Criteria) this;
        }

        public Criteria andTopStatusEqualTo(String value) {
            addCriterion("top_status =", value, "topStatus");
            return (Criteria) this;
        }

        public Criteria andTopStatusNotEqualTo(String value) {
            addCriterion("top_status <>", value, "topStatus");
            return (Criteria) this;
        }

        public Criteria andTopStatusGreaterThan(String value) {
            addCriterion("top_status >", value, "topStatus");
            return (Criteria) this;
        }

        public Criteria andTopStatusGreaterThanOrEqualTo(String value) {
            addCriterion("top_status >=", value, "topStatus");
            return (Criteria) this;
        }

        public Criteria andTopStatusLessThan(String value) {
            addCriterion("top_status <", value, "topStatus");
            return (Criteria) this;
        }

        public Criteria andTopStatusLessThanOrEqualTo(String value) {
            addCriterion("top_status <=", value, "topStatus");
            return (Criteria) this;
        }

        public Criteria andTopStatusLike(String value) {
            addCriterion("top_status like", value, "topStatus");
            return (Criteria) this;
        }

        public Criteria andTopStatusNotLike(String value) {
            addCriterion("top_status not like", value, "topStatus");
            return (Criteria) this;
        }

        public Criteria andTopStatusIn(List<String> values) {
            addCriterion("top_status in", values, "topStatus");
            return (Criteria) this;
        }

        public Criteria andTopStatusNotIn(List<String> values) {
            addCriterion("top_status not in", values, "topStatus");
            return (Criteria) this;
        }

        public Criteria andTopStatusBetween(String value1, String value2) {
            addCriterion("top_status between", value1, value2, "topStatus");
            return (Criteria) this;
        }

        public Criteria andTopStatusNotBetween(String value1, String value2) {
            addCriterion("top_status not between", value1, value2, "topStatus");
            return (Criteria) this;
        }

        public Criteria andSourceCodeIsNull() {
            addCriterion("source_code is null");
            return (Criteria) this;
        }

        public Criteria andSourceCodeIsNotNull() {
            addCriterion("source_code is not null");
            return (Criteria) this;
        }

        public Criteria andSourceCodeEqualTo(String value) {
            addCriterion("source_code =", value, "sourceCode");
            return (Criteria) this;
        }

        public Criteria andSourceCodeNotEqualTo(String value) {
            addCriterion("source_code <>", value, "sourceCode");
            return (Criteria) this;
        }

        public Criteria andSourceCodeGreaterThan(String value) {
            addCriterion("source_code >", value, "sourceCode");
            return (Criteria) this;
        }

        public Criteria andSourceCodeGreaterThanOrEqualTo(String value) {
            addCriterion("source_code >=", value, "sourceCode");
            return (Criteria) this;
        }

        public Criteria andSourceCodeLessThan(String value) {
            addCriterion("source_code <", value, "sourceCode");
            return (Criteria) this;
        }

        public Criteria andSourceCodeLessThanOrEqualTo(String value) {
            addCriterion("source_code <=", value, "sourceCode");
            return (Criteria) this;
        }

        public Criteria andSourceCodeLike(String value) {
            addCriterion("source_code like", value, "sourceCode");
            return (Criteria) this;
        }

        public Criteria andSourceCodeNotLike(String value) {
            addCriterion("source_code not like", value, "sourceCode");
            return (Criteria) this;
        }

        public Criteria andSourceCodeIn(List<String> values) {
            addCriterion("source_code in", values, "sourceCode");
            return (Criteria) this;
        }

        public Criteria andSourceCodeNotIn(List<String> values) {
            addCriterion("source_code not in", values, "sourceCode");
            return (Criteria) this;
        }

        public Criteria andSourceCodeBetween(String value1, String value2) {
            addCriterion("source_code between", value1, value2, "sourceCode");
            return (Criteria) this;
        }

        public Criteria andSourceCodeNotBetween(String value1, String value2) {
            addCriterion("source_code not between", value1, value2, "sourceCode");
            return (Criteria) this;
        }

        public Criteria andUnionCodeIsNull() {
            addCriterion("union_code is null");
            return (Criteria) this;
        }

        public Criteria andUnionCodeIsNotNull() {
            addCriterion("union_code is not null");
            return (Criteria) this;
        }

        public Criteria andUnionCodeEqualTo(String value) {
            addCriterion("union_code =", value, "unionCode");
            return (Criteria) this;
        }

        public Criteria andUnionCodeNotEqualTo(String value) {
            addCriterion("union_code <>", value, "unionCode");
            return (Criteria) this;
        }

        public Criteria andUnionCodeGreaterThan(String value) {
            addCriterion("union_code >", value, "unionCode");
            return (Criteria) this;
        }

        public Criteria andUnionCodeGreaterThanOrEqualTo(String value) {
            addCriterion("union_code >=", value, "unionCode");
            return (Criteria) this;
        }

        public Criteria andUnionCodeLessThan(String value) {
            addCriterion("union_code <", value, "unionCode");
            return (Criteria) this;
        }

        public Criteria andUnionCodeLessThanOrEqualTo(String value) {
            addCriterion("union_code <=", value, "unionCode");
            return (Criteria) this;
        }

        public Criteria andUnionCodeLike(String value) {
            addCriterion("union_code like", value, "unionCode");
            return (Criteria) this;
        }

        public Criteria andUnionCodeNotLike(String value) {
            addCriterion("union_code not like", value, "unionCode");
            return (Criteria) this;
        }

        public Criteria andUnionCodeIn(List<String> values) {
            addCriterion("union_code in", values, "unionCode");
            return (Criteria) this;
        }

        public Criteria andUnionCodeNotIn(List<String> values) {
            addCriterion("union_code not in", values, "unionCode");
            return (Criteria) this;
        }

        public Criteria andUnionCodeBetween(String value1, String value2) {
            addCriterion("union_code between", value1, value2, "unionCode");
            return (Criteria) this;
        }

        public Criteria andUnionCodeNotBetween(String value1, String value2) {
            addCriterion("union_code not between", value1, value2, "unionCode");
            return (Criteria) this;
        }

        public Criteria andTitleIsNull() {
            addCriterion("title is null");
            return (Criteria) this;
        }

        public Criteria andTitleIsNotNull() {
            addCriterion("title is not null");
            return (Criteria) this;
        }

        public Criteria andTitleEqualTo(String value) {
            addCriterion("title =", value, "title");
            return (Criteria) this;
        }

        public Criteria andTitleNotEqualTo(String value) {
            addCriterion("title <>", value, "title");
            return (Criteria) this;
        }

        public Criteria andTitleGreaterThan(String value) {
            addCriterion("title >", value, "title");
            return (Criteria) this;
        }

        public Criteria andTitleGreaterThanOrEqualTo(String value) {
            addCriterion("title >=", value, "title");
            return (Criteria) this;
        }

        public Criteria andTitleLessThan(String value) {
            addCriterion("title <", value, "title");
            return (Criteria) this;
        }

        public Criteria andTitleLessThanOrEqualTo(String value) {
            addCriterion("title <=", value, "title");
            return (Criteria) this;
        }

        public Criteria andTitleLike(String value) {
            addCriterion("title like", value, "title");
            return (Criteria) this;
        }

        public Criteria andTitleNotLike(String value) {
            addCriterion("title not like", value, "title");
            return (Criteria) this;
        }

        public Criteria andTitleIn(List<String> values) {
            addCriterion("title in", values, "title");
            return (Criteria) this;
        }

        public Criteria andTitleNotIn(List<String> values) {
            addCriterion("title not in", values, "title");
            return (Criteria) this;
        }

        public Criteria andTitleBetween(String value1, String value2) {
            addCriterion("title between", value1, value2, "title");
            return (Criteria) this;
        }

        public Criteria andTitleNotBetween(String value1, String value2) {
            addCriterion("title not between", value1, value2, "title");
            return (Criteria) this;
        }

        public Criteria andSubmitTimeIsNull() {
            addCriterion("submit_time is null");
            return (Criteria) this;
        }

        public Criteria andSubmitTimeIsNotNull() {
            addCriterion("submit_time is not null");
            return (Criteria) this;
        }

        public Criteria andSubmitTimeEqualTo(Date value) {
            addCriterion("submit_time =", value, "submitTime");
            return (Criteria) this;
        }

        public Criteria andSubmitTimeNotEqualTo(Date value) {
            addCriterion("submit_time <>", value, "submitTime");
            return (Criteria) this;
        }

        public Criteria andSubmitTimeGreaterThan(Date value) {
            addCriterion("submit_time >", value, "submitTime");
            return (Criteria) this;
        }

        public Criteria andSubmitTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("submit_time >=", value, "submitTime");
            return (Criteria) this;
        }

        public Criteria andSubmitTimeLessThan(Date value) {
            addCriterion("submit_time <", value, "submitTime");
            return (Criteria) this;
        }

        public Criteria andSubmitTimeLessThanOrEqualTo(Date value) {
            addCriterion("submit_time <=", value, "submitTime");
            return (Criteria) this;
        }

        public Criteria andSubmitTimeIn(List<Date> values) {
            addCriterion("submit_time in", values, "submitTime");
            return (Criteria) this;
        }

        public Criteria andSubmitTimeNotIn(List<Date> values) {
            addCriterion("submit_time not in", values, "submitTime");
            return (Criteria) this;
        }

        public Criteria andSubmitTimeBetween(Date value1, Date value2) {
            addCriterion("submit_time between", value1, value2, "submitTime");
            return (Criteria) this;
        }

        public Criteria andSubmitTimeNotBetween(Date value1, Date value2) {
            addCriterion("submit_time not between", value1, value2, "submitTime");
            return (Criteria) this;
        }

        public Criteria andReadTimesIsNull() {
            addCriterion("read_times is null");
            return (Criteria) this;
        }

        public Criteria andReadTimesIsNotNull() {
            addCriterion("read_times is not null");
            return (Criteria) this;
        }

        public Criteria andReadTimesEqualTo(Integer value) {
            addCriterion("read_times =", value, "readTimes");
            return (Criteria) this;
        }

        public Criteria andReadTimesNotEqualTo(Integer value) {
            addCriterion("read_times <>", value, "readTimes");
            return (Criteria) this;
        }

        public Criteria andReadTimesGreaterThan(Integer value) {
            addCriterion("read_times >", value, "readTimes");
            return (Criteria) this;
        }

        public Criteria andReadTimesGreaterThanOrEqualTo(Integer value) {
            addCriterion("read_times >=", value, "readTimes");
            return (Criteria) this;
        }

        public Criteria andReadTimesLessThan(Integer value) {
            addCriterion("read_times <", value, "readTimes");
            return (Criteria) this;
        }

        public Criteria andReadTimesLessThanOrEqualTo(Integer value) {
            addCriterion("read_times <=", value, "readTimes");
            return (Criteria) this;
        }

        public Criteria andReadTimesIn(List<Integer> values) {
            addCriterion("read_times in", values, "readTimes");
            return (Criteria) this;
        }

        public Criteria andReadTimesNotIn(List<Integer> values) {
            addCriterion("read_times not in", values, "readTimes");
            return (Criteria) this;
        }

        public Criteria andReadTimesBetween(Integer value1, Integer value2) {
            addCriterion("read_times between", value1, value2, "readTimes");
            return (Criteria) this;
        }

        public Criteria andReadTimesNotBetween(Integer value1, Integer value2) {
            addCriterion("read_times not between", value1, value2, "readTimes");
            return (Criteria) this;
        }

        public Criteria andVoteUpIsNull() {
            addCriterion("vote_up is null");
            return (Criteria) this;
        }

        public Criteria andVoteUpIsNotNull() {
            addCriterion("vote_up is not null");
            return (Criteria) this;
        }

        public Criteria andVoteUpEqualTo(Integer value) {
            addCriterion("vote_up =", value, "voteUp");
            return (Criteria) this;
        }

        public Criteria andVoteUpNotEqualTo(Integer value) {
            addCriterion("vote_up <>", value, "voteUp");
            return (Criteria) this;
        }

        public Criteria andVoteUpGreaterThan(Integer value) {
            addCriterion("vote_up >", value, "voteUp");
            return (Criteria) this;
        }

        public Criteria andVoteUpGreaterThanOrEqualTo(Integer value) {
            addCriterion("vote_up >=", value, "voteUp");
            return (Criteria) this;
        }

        public Criteria andVoteUpLessThan(Integer value) {
            addCriterion("vote_up <", value, "voteUp");
            return (Criteria) this;
        }

        public Criteria andVoteUpLessThanOrEqualTo(Integer value) {
            addCriterion("vote_up <=", value, "voteUp");
            return (Criteria) this;
        }

        public Criteria andVoteUpIn(List<Integer> values) {
            addCriterion("vote_up in", values, "voteUp");
            return (Criteria) this;
        }

        public Criteria andVoteUpNotIn(List<Integer> values) {
            addCriterion("vote_up not in", values, "voteUp");
            return (Criteria) this;
        }

        public Criteria andVoteUpBetween(Integer value1, Integer value2) {
            addCriterion("vote_up between", value1, value2, "voteUp");
            return (Criteria) this;
        }

        public Criteria andVoteUpNotBetween(Integer value1, Integer value2) {
            addCriterion("vote_up not between", value1, value2, "voteUp");
            return (Criteria) this;
        }

        public Criteria andVoteDownIsNull() {
            addCriterion("vote_down is null");
            return (Criteria) this;
        }

        public Criteria andVoteDownIsNotNull() {
            addCriterion("vote_down is not null");
            return (Criteria) this;
        }

        public Criteria andVoteDownEqualTo(Integer value) {
            addCriterion("vote_down =", value, "voteDown");
            return (Criteria) this;
        }

        public Criteria andVoteDownNotEqualTo(Integer value) {
            addCriterion("vote_down <>", value, "voteDown");
            return (Criteria) this;
        }

        public Criteria andVoteDownGreaterThan(Integer value) {
            addCriterion("vote_down >", value, "voteDown");
            return (Criteria) this;
        }

        public Criteria andVoteDownGreaterThanOrEqualTo(Integer value) {
            addCriterion("vote_down >=", value, "voteDown");
            return (Criteria) this;
        }

        public Criteria andVoteDownLessThan(Integer value) {
            addCriterion("vote_down <", value, "voteDown");
            return (Criteria) this;
        }

        public Criteria andVoteDownLessThanOrEqualTo(Integer value) {
            addCriterion("vote_down <=", value, "voteDown");
            return (Criteria) this;
        }

        public Criteria andVoteDownIn(List<Integer> values) {
            addCriterion("vote_down in", values, "voteDown");
            return (Criteria) this;
        }

        public Criteria andVoteDownNotIn(List<Integer> values) {
            addCriterion("vote_down not in", values, "voteDown");
            return (Criteria) this;
        }

        public Criteria andVoteDownBetween(Integer value1, Integer value2) {
            addCriterion("vote_down between", value1, value2, "voteDown");
            return (Criteria) this;
        }

        public Criteria andVoteDownNotBetween(Integer value1, Integer value2) {
            addCriterion("vote_down not between", value1, value2, "voteDown");
            return (Criteria) this;
        }

        public Criteria andSharedTimesIsNull() {
            addCriterion("shared_times is null");
            return (Criteria) this;
        }

        public Criteria andSharedTimesIsNotNull() {
            addCriterion("shared_times is not null");
            return (Criteria) this;
        }

        public Criteria andSharedTimesEqualTo(Integer value) {
            addCriterion("shared_times =", value, "sharedTimes");
            return (Criteria) this;
        }

        public Criteria andSharedTimesNotEqualTo(Integer value) {
            addCriterion("shared_times <>", value, "sharedTimes");
            return (Criteria) this;
        }

        public Criteria andSharedTimesGreaterThan(Integer value) {
            addCriterion("shared_times >", value, "sharedTimes");
            return (Criteria) this;
        }

        public Criteria andSharedTimesGreaterThanOrEqualTo(Integer value) {
            addCriterion("shared_times >=", value, "sharedTimes");
            return (Criteria) this;
        }

        public Criteria andSharedTimesLessThan(Integer value) {
            addCriterion("shared_times <", value, "sharedTimes");
            return (Criteria) this;
        }

        public Criteria andSharedTimesLessThanOrEqualTo(Integer value) {
            addCriterion("shared_times <=", value, "sharedTimes");
            return (Criteria) this;
        }

        public Criteria andSharedTimesIn(List<Integer> values) {
            addCriterion("shared_times in", values, "sharedTimes");
            return (Criteria) this;
        }

        public Criteria andSharedTimesNotIn(List<Integer> values) {
            addCriterion("shared_times not in", values, "sharedTimes");
            return (Criteria) this;
        }

        public Criteria andSharedTimesBetween(Integer value1, Integer value2) {
            addCriterion("shared_times between", value1, value2, "sharedTimes");
            return (Criteria) this;
        }

        public Criteria andSharedTimesNotBetween(Integer value1, Integer value2) {
            addCriterion("shared_times not between", value1, value2, "sharedTimes");
            return (Criteria) this;
        }

        public Criteria andCommentTimesIsNull() {
            addCriterion("comment_times is null");
            return (Criteria) this;
        }

        public Criteria andCommentTimesIsNotNull() {
            addCriterion("comment_times is not null");
            return (Criteria) this;
        }

        public Criteria andCommentTimesEqualTo(Integer value) {
            addCriterion("comment_times =", value, "commentTimes");
            return (Criteria) this;
        }

        public Criteria andCommentTimesNotEqualTo(Integer value) {
            addCriterion("comment_times <>", value, "commentTimes");
            return (Criteria) this;
        }

        public Criteria andCommentTimesGreaterThan(Integer value) {
            addCriterion("comment_times >", value, "commentTimes");
            return (Criteria) this;
        }

        public Criteria andCommentTimesGreaterThanOrEqualTo(Integer value) {
            addCriterion("comment_times >=", value, "commentTimes");
            return (Criteria) this;
        }

        public Criteria andCommentTimesLessThan(Integer value) {
            addCriterion("comment_times <", value, "commentTimes");
            return (Criteria) this;
        }

        public Criteria andCommentTimesLessThanOrEqualTo(Integer value) {
            addCriterion("comment_times <=", value, "commentTimes");
            return (Criteria) this;
        }

        public Criteria andCommentTimesIn(List<Integer> values) {
            addCriterion("comment_times in", values, "commentTimes");
            return (Criteria) this;
        }

        public Criteria andCommentTimesNotIn(List<Integer> values) {
            addCriterion("comment_times not in", values, "commentTimes");
            return (Criteria) this;
        }

        public Criteria andCommentTimesBetween(Integer value1, Integer value2) {
            addCriterion("comment_times between", value1, value2, "commentTimes");
            return (Criteria) this;
        }

        public Criteria andCommentTimesNotBetween(Integer value1, Integer value2) {
            addCriterion("comment_times not between", value1, value2, "commentTimes");
            return (Criteria) this;
        }

        public Criteria andStarTimesIsNull() {
            addCriterion("star_times is null");
            return (Criteria) this;
        }

        public Criteria andStarTimesIsNotNull() {
            addCriterion("star_times is not null");
            return (Criteria) this;
        }

        public Criteria andStarTimesEqualTo(Integer value) {
            addCriterion("star_times =", value, "starTimes");
            return (Criteria) this;
        }

        public Criteria andStarTimesNotEqualTo(Integer value) {
            addCriterion("star_times <>", value, "starTimes");
            return (Criteria) this;
        }

        public Criteria andStarTimesGreaterThan(Integer value) {
            addCriterion("star_times >", value, "starTimes");
            return (Criteria) this;
        }

        public Criteria andStarTimesGreaterThanOrEqualTo(Integer value) {
            addCriterion("star_times >=", value, "starTimes");
            return (Criteria) this;
        }

        public Criteria andStarTimesLessThan(Integer value) {
            addCriterion("star_times <", value, "starTimes");
            return (Criteria) this;
        }

        public Criteria andStarTimesLessThanOrEqualTo(Integer value) {
            addCriterion("star_times <=", value, "starTimes");
            return (Criteria) this;
        }

        public Criteria andStarTimesIn(List<Integer> values) {
            addCriterion("star_times in", values, "starTimes");
            return (Criteria) this;
        }

        public Criteria andStarTimesNotIn(List<Integer> values) {
            addCriterion("star_times not in", values, "starTimes");
            return (Criteria) this;
        }

        public Criteria andStarTimesBetween(Integer value1, Integer value2) {
            addCriterion("star_times between", value1, value2, "starTimes");
            return (Criteria) this;
        }

        public Criteria andStarTimesNotBetween(Integer value1, Integer value2) {
            addCriterion("star_times not between", value1, value2, "starTimes");
            return (Criteria) this;
        }

        public Criteria andSrcReadIsNull() {
            addCriterion("src_read is null");
            return (Criteria) this;
        }

        public Criteria andSrcReadIsNotNull() {
            addCriterion("src_read is not null");
            return (Criteria) this;
        }

        public Criteria andSrcReadEqualTo(Integer value) {
            addCriterion("src_read =", value, "srcRead");
            return (Criteria) this;
        }

        public Criteria andSrcReadNotEqualTo(Integer value) {
            addCriterion("src_read <>", value, "srcRead");
            return (Criteria) this;
        }

        public Criteria andSrcReadGreaterThan(Integer value) {
            addCriterion("src_read >", value, "srcRead");
            return (Criteria) this;
        }

        public Criteria andSrcReadGreaterThanOrEqualTo(Integer value) {
            addCriterion("src_read >=", value, "srcRead");
            return (Criteria) this;
        }

        public Criteria andSrcReadLessThan(Integer value) {
            addCriterion("src_read <", value, "srcRead");
            return (Criteria) this;
        }

        public Criteria andSrcReadLessThanOrEqualTo(Integer value) {
            addCriterion("src_read <=", value, "srcRead");
            return (Criteria) this;
        }

        public Criteria andSrcReadIn(List<Integer> values) {
            addCriterion("src_read in", values, "srcRead");
            return (Criteria) this;
        }

        public Criteria andSrcReadNotIn(List<Integer> values) {
            addCriterion("src_read not in", values, "srcRead");
            return (Criteria) this;
        }

        public Criteria andSrcReadBetween(Integer value1, Integer value2) {
            addCriterion("src_read between", value1, value2, "srcRead");
            return (Criteria) this;
        }

        public Criteria andSrcReadNotBetween(Integer value1, Integer value2) {
            addCriterion("src_read not between", value1, value2, "srcRead");
            return (Criteria) this;
        }

        public Criteria andSrcVoteUpIsNull() {
            addCriterion("src_vote_up is null");
            return (Criteria) this;
        }

        public Criteria andSrcVoteUpIsNotNull() {
            addCriterion("src_vote_up is not null");
            return (Criteria) this;
        }

        public Criteria andSrcVoteUpEqualTo(Integer value) {
            addCriterion("src_vote_up =", value, "srcVoteUp");
            return (Criteria) this;
        }

        public Criteria andSrcVoteUpNotEqualTo(Integer value) {
            addCriterion("src_vote_up <>", value, "srcVoteUp");
            return (Criteria) this;
        }

        public Criteria andSrcVoteUpGreaterThan(Integer value) {
            addCriterion("src_vote_up >", value, "srcVoteUp");
            return (Criteria) this;
        }

        public Criteria andSrcVoteUpGreaterThanOrEqualTo(Integer value) {
            addCriterion("src_vote_up >=", value, "srcVoteUp");
            return (Criteria) this;
        }

        public Criteria andSrcVoteUpLessThan(Integer value) {
            addCriterion("src_vote_up <", value, "srcVoteUp");
            return (Criteria) this;
        }

        public Criteria andSrcVoteUpLessThanOrEqualTo(Integer value) {
            addCriterion("src_vote_up <=", value, "srcVoteUp");
            return (Criteria) this;
        }

        public Criteria andSrcVoteUpIn(List<Integer> values) {
            addCriterion("src_vote_up in", values, "srcVoteUp");
            return (Criteria) this;
        }

        public Criteria andSrcVoteUpNotIn(List<Integer> values) {
            addCriterion("src_vote_up not in", values, "srcVoteUp");
            return (Criteria) this;
        }

        public Criteria andSrcVoteUpBetween(Integer value1, Integer value2) {
            addCriterion("src_vote_up between", value1, value2, "srcVoteUp");
            return (Criteria) this;
        }

        public Criteria andSrcVoteUpNotBetween(Integer value1, Integer value2) {
            addCriterion("src_vote_up not between", value1, value2, "srcVoteUp");
            return (Criteria) this;
        }

        public Criteria andSrcVoteDownIsNull() {
            addCriterion("src_vote_down is null");
            return (Criteria) this;
        }

        public Criteria andSrcVoteDownIsNotNull() {
            addCriterion("src_vote_down is not null");
            return (Criteria) this;
        }

        public Criteria andSrcVoteDownEqualTo(Integer value) {
            addCriterion("src_vote_down =", value, "srcVoteDown");
            return (Criteria) this;
        }

        public Criteria andSrcVoteDownNotEqualTo(Integer value) {
            addCriterion("src_vote_down <>", value, "srcVoteDown");
            return (Criteria) this;
        }

        public Criteria andSrcVoteDownGreaterThan(Integer value) {
            addCriterion("src_vote_down >", value, "srcVoteDown");
            return (Criteria) this;
        }

        public Criteria andSrcVoteDownGreaterThanOrEqualTo(Integer value) {
            addCriterion("src_vote_down >=", value, "srcVoteDown");
            return (Criteria) this;
        }

        public Criteria andSrcVoteDownLessThan(Integer value) {
            addCriterion("src_vote_down <", value, "srcVoteDown");
            return (Criteria) this;
        }

        public Criteria andSrcVoteDownLessThanOrEqualTo(Integer value) {
            addCriterion("src_vote_down <=", value, "srcVoteDown");
            return (Criteria) this;
        }

        public Criteria andSrcVoteDownIn(List<Integer> values) {
            addCriterion("src_vote_down in", values, "srcVoteDown");
            return (Criteria) this;
        }

        public Criteria andSrcVoteDownNotIn(List<Integer> values) {
            addCriterion("src_vote_down not in", values, "srcVoteDown");
            return (Criteria) this;
        }

        public Criteria andSrcVoteDownBetween(Integer value1, Integer value2) {
            addCriterion("src_vote_down between", value1, value2, "srcVoteDown");
            return (Criteria) this;
        }

        public Criteria andSrcVoteDownNotBetween(Integer value1, Integer value2) {
            addCriterion("src_vote_down not between", value1, value2, "srcVoteDown");
            return (Criteria) this;
        }

        public Criteria andSrcSharedIsNull() {
            addCriterion("src_shared is null");
            return (Criteria) this;
        }

        public Criteria andSrcSharedIsNotNull() {
            addCriterion("src_shared is not null");
            return (Criteria) this;
        }

        public Criteria andSrcSharedEqualTo(Integer value) {
            addCriterion("src_shared =", value, "srcShared");
            return (Criteria) this;
        }

        public Criteria andSrcSharedNotEqualTo(Integer value) {
            addCriterion("src_shared <>", value, "srcShared");
            return (Criteria) this;
        }

        public Criteria andSrcSharedGreaterThan(Integer value) {
            addCriterion("src_shared >", value, "srcShared");
            return (Criteria) this;
        }

        public Criteria andSrcSharedGreaterThanOrEqualTo(Integer value) {
            addCriterion("src_shared >=", value, "srcShared");
            return (Criteria) this;
        }

        public Criteria andSrcSharedLessThan(Integer value) {
            addCriterion("src_shared <", value, "srcShared");
            return (Criteria) this;
        }

        public Criteria andSrcSharedLessThanOrEqualTo(Integer value) {
            addCriterion("src_shared <=", value, "srcShared");
            return (Criteria) this;
        }

        public Criteria andSrcSharedIn(List<Integer> values) {
            addCriterion("src_shared in", values, "srcShared");
            return (Criteria) this;
        }

        public Criteria andSrcSharedNotIn(List<Integer> values) {
            addCriterion("src_shared not in", values, "srcShared");
            return (Criteria) this;
        }

        public Criteria andSrcSharedBetween(Integer value1, Integer value2) {
            addCriterion("src_shared between", value1, value2, "srcShared");
            return (Criteria) this;
        }

        public Criteria andSrcSharedNotBetween(Integer value1, Integer value2) {
            addCriterion("src_shared not between", value1, value2, "srcShared");
            return (Criteria) this;
        }

        public Criteria andSrcSourceIsNull() {
            addCriterion("src_source is null");
            return (Criteria) this;
        }

        public Criteria andSrcSourceIsNotNull() {
            addCriterion("src_source is not null");
            return (Criteria) this;
        }

        public Criteria andSrcSourceEqualTo(String value) {
            addCriterion("src_source =", value, "srcSource");
            return (Criteria) this;
        }

        public Criteria andSrcSourceNotEqualTo(String value) {
            addCriterion("src_source <>", value, "srcSource");
            return (Criteria) this;
        }

        public Criteria andSrcSourceGreaterThan(String value) {
            addCriterion("src_source >", value, "srcSource");
            return (Criteria) this;
        }

        public Criteria andSrcSourceGreaterThanOrEqualTo(String value) {
            addCriterion("src_source >=", value, "srcSource");
            return (Criteria) this;
        }

        public Criteria andSrcSourceLessThan(String value) {
            addCriterion("src_source <", value, "srcSource");
            return (Criteria) this;
        }

        public Criteria andSrcSourceLessThanOrEqualTo(String value) {
            addCriterion("src_source <=", value, "srcSource");
            return (Criteria) this;
        }

        public Criteria andSrcSourceLike(String value) {
            addCriterion("src_source like", value, "srcSource");
            return (Criteria) this;
        }

        public Criteria andSrcSourceNotLike(String value) {
            addCriterion("src_source not like", value, "srcSource");
            return (Criteria) this;
        }

        public Criteria andSrcSourceIn(List<String> values) {
            addCriterion("src_source in", values, "srcSource");
            return (Criteria) this;
        }

        public Criteria andSrcSourceNotIn(List<String> values) {
            addCriterion("src_source not in", values, "srcSource");
            return (Criteria) this;
        }

        public Criteria andSrcSourceBetween(String value1, String value2) {
            addCriterion("src_source between", value1, value2, "srcSource");
            return (Criteria) this;
        }

        public Criteria andSrcSourceNotBetween(String value1, String value2) {
            addCriterion("src_source not between", value1, value2, "srcSource");
            return (Criteria) this;
        }

        public Criteria andListImgsIsNull() {
            addCriterion("list_imgs is null");
            return (Criteria) this;
        }

        public Criteria andListImgsIsNotNull() {
            addCriterion("list_imgs is not null");
            return (Criteria) this;
        }

        public Criteria andListImgsEqualTo(String value) {
            addCriterion("list_imgs =", value, "listImgs");
            return (Criteria) this;
        }

        public Criteria andListImgsNotEqualTo(String value) {
            addCriterion("list_imgs <>", value, "listImgs");
            return (Criteria) this;
        }

        public Criteria andListImgsGreaterThan(String value) {
            addCriterion("list_imgs >", value, "listImgs");
            return (Criteria) this;
        }

        public Criteria andListImgsGreaterThanOrEqualTo(String value) {
            addCriterion("list_imgs >=", value, "listImgs");
            return (Criteria) this;
        }

        public Criteria andListImgsLessThan(String value) {
            addCriterion("list_imgs <", value, "listImgs");
            return (Criteria) this;
        }

        public Criteria andListImgsLessThanOrEqualTo(String value) {
            addCriterion("list_imgs <=", value, "listImgs");
            return (Criteria) this;
        }

        public Criteria andListImgsLike(String value) {
            addCriterion("list_imgs like", value, "listImgs");
            return (Criteria) this;
        }

        public Criteria andListImgsNotLike(String value) {
            addCriterion("list_imgs not like", value, "listImgs");
            return (Criteria) this;
        }

        public Criteria andListImgsIn(List<String> values) {
            addCriterion("list_imgs in", values, "listImgs");
            return (Criteria) this;
        }

        public Criteria andListImgsNotIn(List<String> values) {
            addCriterion("list_imgs not in", values, "listImgs");
            return (Criteria) this;
        }

        public Criteria andListImgsBetween(String value1, String value2) {
            addCriterion("list_imgs between", value1, value2, "listImgs");
            return (Criteria) this;
        }

        public Criteria andListImgsNotBetween(String value1, String value2) {
            addCriterion("list_imgs not between", value1, value2, "listImgs");
            return (Criteria) this;
        }

        public Criteria andListCommentIsNull() {
            addCriterion("list_comment is null");
            return (Criteria) this;
        }

        public Criteria andListCommentIsNotNull() {
            addCriterion("list_comment is not null");
            return (Criteria) this;
        }

        public Criteria andListCommentEqualTo(String value) {
            addCriterion("list_comment =", value, "listComment");
            return (Criteria) this;
        }

        public Criteria andListCommentNotEqualTo(String value) {
            addCriterion("list_comment <>", value, "listComment");
            return (Criteria) this;
        }

        public Criteria andListCommentGreaterThan(String value) {
            addCriterion("list_comment >", value, "listComment");
            return (Criteria) this;
        }

        public Criteria andListCommentGreaterThanOrEqualTo(String value) {
            addCriterion("list_comment >=", value, "listComment");
            return (Criteria) this;
        }

        public Criteria andListCommentLessThan(String value) {
            addCriterion("list_comment <", value, "listComment");
            return (Criteria) this;
        }

        public Criteria andListCommentLessThanOrEqualTo(String value) {
            addCriterion("list_comment <=", value, "listComment");
            return (Criteria) this;
        }

        public Criteria andListCommentLike(String value) {
            addCriterion("list_comment like", value, "listComment");
            return (Criteria) this;
        }

        public Criteria andListCommentNotLike(String value) {
            addCriterion("list_comment not like", value, "listComment");
            return (Criteria) this;
        }

        public Criteria andListCommentIn(List<String> values) {
            addCriterion("list_comment in", values, "listComment");
            return (Criteria) this;
        }

        public Criteria andListCommentNotIn(List<String> values) {
            addCriterion("list_comment not in", values, "listComment");
            return (Criteria) this;
        }

        public Criteria andListCommentBetween(String value1, String value2) {
            addCriterion("list_comment between", value1, value2, "listComment");
            return (Criteria) this;
        }

        public Criteria andListCommentNotBetween(String value1, String value2) {
            addCriterion("list_comment not between", value1, value2, "listComment");
            return (Criteria) this;
        }

        public Criteria andStatusIsNull() {
            addCriterion("status is null");
            return (Criteria) this;
        }

        public Criteria andStatusIsNotNull() {
            addCriterion("status is not null");
            return (Criteria) this;
        }

        public Criteria andStatusEqualTo(String value) {
            addCriterion("status =", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotEqualTo(String value) {
            addCriterion("status <>", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThan(String value) {
            addCriterion("status >", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(String value) {
            addCriterion("status >=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThan(String value) {
            addCriterion("status <", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThanOrEqualTo(String value) {
            addCriterion("status <=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLike(String value) {
            addCriterion("status like", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotLike(String value) {
            addCriterion("status not like", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusIn(List<String> values) {
            addCriterion("status in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotIn(List<String> values) {
            addCriterion("status not in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusBetween(String value1, String value2) {
            addCriterion("status between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotBetween(String value1, String value2) {
            addCriterion("status not between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andSrcHrefIsNull() {
            addCriterion("src_href is null");
            return (Criteria) this;
        }

        public Criteria andSrcHrefIsNotNull() {
            addCriterion("src_href is not null");
            return (Criteria) this;
        }

        public Criteria andSrcHrefEqualTo(String value) {
            addCriterion("src_href =", value, "srcHref");
            return (Criteria) this;
        }

        public Criteria andSrcHrefNotEqualTo(String value) {
            addCriterion("src_href <>", value, "srcHref");
            return (Criteria) this;
        }

        public Criteria andSrcHrefGreaterThan(String value) {
            addCriterion("src_href >", value, "srcHref");
            return (Criteria) this;
        }

        public Criteria andSrcHrefGreaterThanOrEqualTo(String value) {
            addCriterion("src_href >=", value, "srcHref");
            return (Criteria) this;
        }

        public Criteria andSrcHrefLessThan(String value) {
            addCriterion("src_href <", value, "srcHref");
            return (Criteria) this;
        }

        public Criteria andSrcHrefLessThanOrEqualTo(String value) {
            addCriterion("src_href <=", value, "srcHref");
            return (Criteria) this;
        }

        public Criteria andSrcHrefLike(String value) {
            addCriterion("src_href like", value, "srcHref");
            return (Criteria) this;
        }

        public Criteria andSrcHrefNotLike(String value) {
            addCriterion("src_href not like", value, "srcHref");
            return (Criteria) this;
        }

        public Criteria andSrcHrefIn(List<String> values) {
            addCriterion("src_href in", values, "srcHref");
            return (Criteria) this;
        }

        public Criteria andSrcHrefNotIn(List<String> values) {
            addCriterion("src_href not in", values, "srcHref");
            return (Criteria) this;
        }

        public Criteria andSrcHrefBetween(String value1, String value2) {
            addCriterion("src_href between", value1, value2, "srcHref");
            return (Criteria) this;
        }

        public Criteria andSrcHrefNotBetween(String value1, String value2) {
            addCriterion("src_href not between", value1, value2, "srcHref");
            return (Criteria) this;
        }

        public Criteria andLinkTypeIsNull() {
            addCriterion("link_type is null");
            return (Criteria) this;
        }

        public Criteria andLinkTypeIsNotNull() {
            addCriterion("link_type is not null");
            return (Criteria) this;
        }

        public Criteria andLinkTypeEqualTo(String value) {
            addCriterion("link_type =", value, "linkType");
            return (Criteria) this;
        }

        public Criteria andLinkTypeNotEqualTo(String value) {
            addCriterion("link_type <>", value, "linkType");
            return (Criteria) this;
        }

        public Criteria andLinkTypeGreaterThan(String value) {
            addCriterion("link_type >", value, "linkType");
            return (Criteria) this;
        }

        public Criteria andLinkTypeGreaterThanOrEqualTo(String value) {
            addCriterion("link_type >=", value, "linkType");
            return (Criteria) this;
        }

        public Criteria andLinkTypeLessThan(String value) {
            addCriterion("link_type <", value, "linkType");
            return (Criteria) this;
        }

        public Criteria andLinkTypeLessThanOrEqualTo(String value) {
            addCriterion("link_type <=", value, "linkType");
            return (Criteria) this;
        }

        public Criteria andLinkTypeLike(String value) {
            addCriterion("link_type like", value, "linkType");
            return (Criteria) this;
        }

        public Criteria andLinkTypeNotLike(String value) {
            addCriterion("link_type not like", value, "linkType");
            return (Criteria) this;
        }

        public Criteria andLinkTypeIn(List<String> values) {
            addCriterion("link_type in", values, "linkType");
            return (Criteria) this;
        }

        public Criteria andLinkTypeNotIn(List<String> values) {
            addCriterion("link_type not in", values, "linkType");
            return (Criteria) this;
        }

        public Criteria andLinkTypeBetween(String value1, String value2) {
            addCriterion("link_type between", value1, value2, "linkType");
            return (Criteria) this;
        }

        public Criteria andLinkTypeNotBetween(String value1, String value2) {
            addCriterion("link_type not between", value1, value2, "linkType");
            return (Criteria) this;
        }

        public Criteria andScoreIsNull() {
            addCriterion("score is null");
            return (Criteria) this;
        }

        public Criteria andScoreIsNotNull() {
            addCriterion("score is not null");
            return (Criteria) this;
        }

        public Criteria andScoreEqualTo(Long value) {
            addCriterion("score =", value, "score");
            return (Criteria) this;
        }

        public Criteria andScoreNotEqualTo(Long value) {
            addCriterion("score <>", value, "score");
            return (Criteria) this;
        }

        public Criteria andScoreGreaterThan(Long value) {
            addCriterion("score >", value, "score");
            return (Criteria) this;
        }

        public Criteria andScoreGreaterThanOrEqualTo(Long value) {
            addCriterion("score >=", value, "score");
            return (Criteria) this;
        }

        public Criteria andScoreLessThan(Long value) {
            addCriterion("score <", value, "score");
            return (Criteria) this;
        }

        public Criteria andScoreLessThanOrEqualTo(Long value) {
            addCriterion("score <=", value, "score");
            return (Criteria) this;
        }

        public Criteria andScoreIn(List<Long> values) {
            addCriterion("score in", values, "score");
            return (Criteria) this;
        }

        public Criteria andScoreNotIn(List<Long> values) {
            addCriterion("score not in", values, "score");
            return (Criteria) this;
        }

        public Criteria andScoreBetween(Long value1, Long value2) {
            addCriterion("score between", value1, value2, "score");
            return (Criteria) this;
        }

        public Criteria andScoreNotBetween(Long value1, Long value2) {
            addCriterion("score not between", value1, value2, "score");
            return (Criteria) this;
        }

        public Criteria andOperatorIsNull() {
            addCriterion("operator is null");
            return (Criteria) this;
        }

        public Criteria andOperatorIsNotNull() {
            addCriterion("operator is not null");
            return (Criteria) this;
        }

        public Criteria andOperatorEqualTo(String value) {
            addCriterion("operator =", value, "operator");
            return (Criteria) this;
        }

        public Criteria andOperatorNotEqualTo(String value) {
            addCriterion("operator <>", value, "operator");
            return (Criteria) this;
        }

        public Criteria andOperatorGreaterThan(String value) {
            addCriterion("operator >", value, "operator");
            return (Criteria) this;
        }

        public Criteria andOperatorGreaterThanOrEqualTo(String value) {
            addCriterion("operator >=", value, "operator");
            return (Criteria) this;
        }

        public Criteria andOperatorLessThan(String value) {
            addCriterion("operator <", value, "operator");
            return (Criteria) this;
        }

        public Criteria andOperatorLessThanOrEqualTo(String value) {
            addCriterion("operator <=", value, "operator");
            return (Criteria) this;
        }

        public Criteria andOperatorLike(String value) {
            addCriterion("operator like", value, "operator");
            return (Criteria) this;
        }

        public Criteria andOperatorNotLike(String value) {
            addCriterion("operator not like", value, "operator");
            return (Criteria) this;
        }

        public Criteria andOperatorIn(List<String> values) {
            addCriterion("operator in", values, "operator");
            return (Criteria) this;
        }

        public Criteria andOperatorNotIn(List<String> values) {
            addCriterion("operator not in", values, "operator");
            return (Criteria) this;
        }

        public Criteria andOperatorBetween(String value1, String value2) {
            addCriterion("operator between", value1, value2, "operator");
            return (Criteria) this;
        }

        public Criteria andOperatorNotBetween(String value1, String value2) {
            addCriterion("operator not between", value1, value2, "operator");
            return (Criteria) this;
        }

        public Criteria andGmtCreateIsNull() {
            addCriterion("gmt_create is null");
            return (Criteria) this;
        }

        public Criteria andGmtCreateIsNotNull() {
            addCriterion("gmt_create is not null");
            return (Criteria) this;
        }

        public Criteria andGmtCreateEqualTo(Date value) {
            addCriterion("gmt_create =", value, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtCreateNotEqualTo(Date value) {
            addCriterion("gmt_create <>", value, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtCreateGreaterThan(Date value) {
            addCriterion("gmt_create >", value, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtCreateGreaterThanOrEqualTo(Date value) {
            addCriterion("gmt_create >=", value, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtCreateLessThan(Date value) {
            addCriterion("gmt_create <", value, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtCreateLessThanOrEqualTo(Date value) {
            addCriterion("gmt_create <=", value, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtCreateIn(List<Date> values) {
            addCriterion("gmt_create in", values, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtCreateNotIn(List<Date> values) {
            addCriterion("gmt_create not in", values, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtCreateBetween(Date value1, Date value2) {
            addCriterion("gmt_create between", value1, value2, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtCreateNotBetween(Date value1, Date value2) {
            addCriterion("gmt_create not between", value1, value2, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedIsNull() {
            addCriterion("gmt_modified is null");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedIsNotNull() {
            addCriterion("gmt_modified is not null");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedEqualTo(Date value) {
            addCriterion("gmt_modified =", value, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedNotEqualTo(Date value) {
            addCriterion("gmt_modified <>", value, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedGreaterThan(Date value) {
            addCriterion("gmt_modified >", value, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedGreaterThanOrEqualTo(Date value) {
            addCriterion("gmt_modified >=", value, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedLessThan(Date value) {
            addCriterion("gmt_modified <", value, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedLessThanOrEqualTo(Date value) {
            addCriterion("gmt_modified <=", value, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedIn(List<Date> values) {
            addCriterion("gmt_modified in", values, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedNotIn(List<Date> values) {
            addCriterion("gmt_modified not in", values, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedBetween(Date value1, Date value2) {
            addCriterion("gmt_modified between", value1, value2, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedNotBetween(Date value1, Date value2) {
            addCriterion("gmt_modified not between", value1, value2, "gmtModified");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}